// 自定义指令的方式 来决定此标签是否要移除
// 根据当前登录用户信息 权限点英文字符串
// 再根据标签上自定义指令传入得标记英文字符串匹配
// 如果没有 就把当前标签移除
import store from '@/store'
export default {
  install(Vue) {
    // 创建自定义指令
    Vue.directive('power', {
      inserted(el, binding) { // inserted固定名字配置项,作用:当指令所在标签第一次插入到真实DOM的时候 此函数会自动执行,
        // 参数1.就是指令所在的'原生标签'
        // 参数2.指令收到的一些值和其他配置 binfing.value 拿到v-power指定右侧传入的值

        // 问题一 el-button v-power 为什么返回的是button原生标签
        // 因为我们写的el-button和v-power都是模板语法 都会被vue源码解析 包括inserted调用
        console.log(el)
        console.log(binding.value)
        const buttonArr = store.state.user.userInfo.roles.points
        if (!buttonArr.includes(binding.value)) {
          el.parentNode.removeChild(el)
        }
      }
    })
  }
}
